home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 June / EnigmA AMIGA RUN 08 (1996)(G.R. Edizioni)(IT)[!][issue 1996-06][EARSAN CD VII].iso / earcd / c-lang / strmc105.lha / StormC-Demo / INCLUDE / clib / commodities_protos.h < prev    next >
C/C++ Source or Header  |  1996-01-02  |  2KB  |  94 lines

  1. #ifndef  CLIB_COMMODITIES_PROTOS_H
  2. #define  CLIB_COMMODITIES_PROTOS_H
  3.  
  4. /*
  5. **    $VER: commodities_protos.h 38.4 (27.2.92)
  6. **    Includes Release 40.15
  7. **
  8. **    C prototypes. For use with 32 bit integers only.
  9. **
  10. **    (C) Copyright 1990-1993 Commodore-Amiga, Inc.
  11. **        All Rights Reserved
  12. */
  13.  
  14. #ifndef  EXEC_TYPES_H
  15. #include <exec/types.h>
  16. #endif
  17. #ifndef  EXEC_NODES_H
  18. #include <exec/nodes.h>
  19. #endif
  20. #ifndef  LIBRARIES_COMMODITIES_H
  21. #include <libraries/commodities.h>
  22. #endif
  23. #ifndef  DEVICES_INPUTEVENT_H
  24. #include <devices/inputevent.h>
  25. #endif
  26. #ifndef  DEVICES_KEYMAP_H
  27. #include <devices/keymap.h>
  28. #endif
  29.  
  30. #ifdef __cplusplus
  31. extern "C" {
  32. #endif
  33.  
  34. /*--- functions in V36 or higher (Release 2.0) ---*/
  35.  
  36. /*  OBJECT UTILITIES */
  37.  
  38. CxObj *CreateCxObj( unsigned long type, long arg1, long arg2 );
  39. CxObj *CxBroker( struct NewBroker *nb, LONG *error );
  40. LONG ActivateCxObj( CxObj *co, long true );
  41. void DeleteCxObj( CxObj *co );
  42. void DeleteCxObjAll( CxObj *co );
  43. ULONG CxObjType( CxObj *co );
  44. LONG CxObjError( CxObj *co );
  45. void ClearCxObjError( CxObj *co );
  46. LONG SetCxObjPri( CxObj *co, long pri );
  47.  
  48. /*  OBJECT ATTACHMENT */
  49.  
  50. void AttachCxObj( CxObj *headObj, CxObj *co );
  51. void EnqueueCxObj( CxObj *headObj, CxObj *co );
  52. void InsertCxObj( CxObj *headObj, CxObj *co, CxObj *pred );
  53. void RemoveCxObj( CxObj *co );
  54.  
  55. /*  TYPE SPECIFIC */
  56.  
  57. void SetTranslate( CxObj *translator, struct InputEvent *events );
  58. void SetFilter( CxObj *filter, STRPTR text );
  59. void SetFilterIX( CxObj *filter, IX *ix );
  60. LONG ParseIX( STRPTR description, IX *ix );
  61.  
  62. /*  COMMON MESSAGE */
  63.  
  64. ULONG CxMsgType( CxMsg *cxm );
  65. APTR CxMsgData( CxMsg *cxm );
  66. LONG CxMsgID( CxMsg *cxm );
  67.  
  68. /*  MESSAGE ROUTING */
  69.  
  70. void DivertCxMsg( CxMsg *cxm, CxObj *headObj, CxObj *returnObj );
  71. void RouteCxMsg( CxMsg *cxm, CxObj *co );
  72. void DisposeCxMsg( CxMsg *cxm );
  73.  
  74. /*  INPUT EVENT HANDLING */
  75.  
  76. BOOL InvertKeyMap( unsigned long ansiCode, struct InputEvent *event,
  77.     struct KeyMap *km );
  78. void AddIEvents( struct InputEvent *events );
  79. /*--- functions in V38 or higher (Release 2.1) ---*/
  80. /*  MORE INPUT EVENT HANDLING */
  81. BOOL MatchIX( struct InputEvent *event, IX *ix );
  82.  
  83. #ifdef __cplusplus
  84. }
  85. #endif
  86.  
  87. #ifdef STORMPRAGMAS
  88. #ifndef _INCLUDE_PRAGMA_COMMODITIES_LIB_H
  89. #include <pragma/commodities_lib.h>
  90. #endif
  91. #endif
  92.  
  93. #endif     /* CLIB_COMMODITIES_PROTOS_H */
  94.